1. Field of the Invention
The present invention relates to cryptography in a cellular telecommunications system, and more particularly to generating asymmetric cryptographic keys.
2. Description of the Related Art
Ciphering is used in many data transmission systems to prevent the transmitted data from getting into the hands of an unauthorized user. Ciphering has become more significant in the recent years, particularly as wireless telecommunication has become more common. An example of such a wireless telecommunication system is the Universal mobile communications system (UMTS). In the UMTS a part of the network is implemented wirelessly, and the data transmission is carried out on the radio path. The radio path is an open resource and it involves security risks. In digital mobile communications systems various solutions have been developed to arrange data protection, for example ciphering methods and user identification, i.e. authentication, methods.
Ciphering means converting data into such a form from which it is possible to interpret the original content of the data only by using a related reverse method. The ciphering can be performed, for example, by encrypting the information to be transmitted in a transmitter, and by decrypting the information in a receiver. In the encryption means, the information to be transmitted, for example a bit stream, is multiplied by certain encryption bits, after which it is difficult to find out what the original bit stream was if the used encryption bit pattern is not known.
A ciphering key is a sequence of symbols or bits used for ciphering data according to a given cryptographic algorithm. Symmetric cryptography refers to ciphering where the same ciphering key is used both for encrypting and decrypting data. In symmetric cryptography the different network nodes share the same secret ciphering key, and the decrypting algorithm is the reverse function of the encrypting algorithm.
Asymmetric cryptography means ciphering where a different ciphering key is used for encrypting and decrypting data. In asymmetric encryption two related cryptographic keys, a public key and a private key, are used. A public key is an encryption key belonging to a user, and it is publicly available also to others than the user. A private key is a decryption key belonging to a user, and the user keeps it secret and in restricted use.
Public key infrastructure (PKI, also known as public key encryption or public key cryptography) is an example of a system for asymmetric cryptography where one ciphering key is a public key and the other a private key. In public key infrastructure a trusted third party or a certification authority provides the users with a set of ciphering keys, confirms them with an electronic signature, delivers them to the users, maintains a certificate file and a certificate revocation list. From the certificate file and the certificate revocation list anyone is able to check the certificate they have received and its validity. A public key certificate is an electronically signed data unity, which confirms that the identifier used in an electronic signature belongs to a specific person or organization and is still valid. In PKI, a public key is used for encrypting data and a private key for decrypting encryption. An example of PKI is RSA encryption, which is based on the cryptographic algorithm developed by Rivest, Shamir and Adleman. With RSA encryption, it is possible to cipher a message before transmitting it to the receiving party via an unreliable transmission channel. The transmitting party knows the public key of the receiving party and encrypts the message using the public key before transmitting it. The receiving party knows the private key and is able to decrypt the message by using the private key. Certification authority (CA) may refer to a public authority, or it may be a function of the network operator. Certification authority is responsible for issuing and managing user certificates. An issued certificate may comprise information of the issuer of the certificate, it may bind a public key to the identity of the user, or it can make a more specific statement, for example, that a user is authorized to get a certain service.
PKI may also be utilized in digital signatures. By means of a digital signature, the identity of the transmitting party and the integrity of the signed material can be ensured. A digital signature may be obtained using the private key as an encryption key and the public key as a decryption key. The obtained digital signature is then attached to the signed material before transmitting it.
Authentication and key agreement (AKA) is a mechanism of the mobile system, which enables authentication between the user and the serving network. AKA establishes a cipher key (CK) and an integrity key (IK) between the user and the serving network using the secret key (K). The IK is a data protection key used for ensuring that the data has not been altered during transmission, and the CK is a symmetric ciphering key.
In current systems, dynamic user certificates are provided to the users such that a public/private key pair is first created in the user terminal. After the creation of the public/private key pair, the user terminal sends a certificate request to the certification authority. As a response to receiving the certificate request, the certification authority issues the public key certificate and transmits an acknowledgement to the user. The public key certificate confirms that a cryptographic key, i.e. the public key, is valid and can be trusted.
A disadvantage in the arrangement described above is that the system has to carry a considerable amount of request and response messages between the user terminals and the certification authority. This causes load on the network, and, moreover, the authentication of these response or request messages one by one can be a problem.